package com.fowo.api.model.logistics.provider.item;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fowo.api.common.validator.*;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.validation.constraints.*;
import lombok.Getter;
import lombok.Setter;

/**
 * 物流商子表 预览导入辅助模型(全字段为文本类型)
 * @author yl_ls
 */
@Getter
@Setter
public class LogisticsProviderItemImportPo {

  /** 所属物流商 */
  @ExcelProperty("所属物流商")
  @Size(max = 50, message = "所属物流商长度不能超过50")
  private String parentLogisticsProviderName;

  @ExcelIgnore
  @Schema(title = "所属物流商")
  private String parentLogisticsProvider;

  /** 自定义收款账号名称 */
  @ExcelProperty("*自定义收款账号名称")
  @NotBlank(message = "自定义收款账号名称不能为空")
  @Size(max = 50, message = "自定义收款账号名称长度不能超过50")
  private String name;

  /** 户名 */
  @ExcelProperty("户名")
  @Size(max = 50, message = "户名长度不能超过50")
  private String accountName;

  /** 开户行 */
  @ExcelProperty("开户行")
  @Size(max = 50, message = "开户行长度不能超过50")
  private String accountBank;

  /** swiftcode */
  @ExcelProperty("swiftcode")
  @Size(max = 50, message = "swiftcode长度不能超过50")
  private String swiftcode;

  /** 账号 */
  @ExcelProperty("账号")
  @Size(max = 50, message = "账号长度不能超过50")
  private String accountNumber;

  /** 默认账号 */
  @ExcelProperty("默认账号")
  @EnumsString(
    value = { "是", "否" },
    message = "默认账号只能是“是”, “否”中的一个"
  )
  private String defaultAccount;
}
